package ar.com.arkios.kfconmodelo.modelo;

/**
 *
 * @author Ale
 * @version 1.01
 * 
 */
public class PesoStandar implements Comparable<PesoStandar> {
    
    private static final String fs = new Character('\u001C').toString();
    
    //Atributos
    
    private String miEspecieCod;
    private String miVariedadCod;
    private String miEnvaseCod;
    private String miCalibreCod;
    private int miPosicion;
    private String miEmbalajeCod;
    private boolean  miMarca;
    private double miPeso;
   
    //Constructores    
    public PesoStandar() {
    }

    public PesoStandar(String laEspecieCod, String laVariedadCod, String elEnvaseCod, String elCalibreCod, int laPosicion, String elEmbalajeCod, boolean  laMarca, double elPeso) {
        this.miEspecieCod = laEspecieCod;
        this.miVariedadCod = laVariedadCod;
        this.miEnvaseCod = elEnvaseCod;
        this.miCalibreCod = elCalibreCod;
        this.miPosicion = laPosicion;
        this.miEmbalajeCod = elEmbalajeCod;
        this.miMarca = laMarca;
        this.miPeso = elPeso;
    }
  
    //Getters & Setters
   
    public String getMiCalibreCod() {
        return miCalibreCod;
    }

    public void setMiCalibreCod(String elCalibreCod) {
        this.miCalibreCod = elCalibreCod;
    }

    public String getMiEmbalajeCod() {
        return miEmbalajeCod;
    }

    public void setMiEmbalajeCod(String elEmbalajeCod) {
        this.miEmbalajeCod = elEmbalajeCod;
    }

    public String getMiEnvaseCod() {
        return miEnvaseCod;
    }

    public void setMiEnvaseCod(String elEnvaseCod) {
        this.miEnvaseCod = elEnvaseCod;
    }

    public String getMiEspecieCod() {
        return miEspecieCod;
    }

    public void setMiEspecieCod(String laEspecieCod) {
        this.miEspecieCod = laEspecieCod;
    }

    public boolean  getMiMarca() {
        return miMarca;
    }

    public void setMiMarca(boolean  laMarca) {
        this.miMarca = laMarca;
    }

    public double getMiPeso() {
        return miPeso;
    }

    public void setMiPeso(double elPeso) {
        this.miPeso = elPeso;
    }

    public int getMiPosicion() {
        return miPosicion;
    }

    public void setMiPosicion(int laPosicion) {
        this.miPosicion = laPosicion;
    }

    public String getMiVariedadCod() {
        return miVariedadCod;
    }

    public void setMiVariedadCod(String laVariedadCod) {
        this.miVariedadCod = laVariedadCod;
    }

    public int compareTo(PesoStandar o) {
        return this.getClave().compareTo(o.getClave());
    }
    
    private String getClave() {
        return this.miEnvaseCod + fs + this.miVariedadCod + fs + this.miEmbalajeCod + fs + this.miCalibreCod + fs + String.format("%1$02d", this.miPosicion);
    }
    
}
